Most companies have a multitude of computer systems executing business processes, such as business applications, networks, databases, and the like, and all of these systems contain data (documents or any kind of objects) that are relevant for particular business processes. The same is true even for cross company networks or inter-company systems.
When different systems are utilized, different business object types may be implicated. In addition, even if such systems contain business object types of the same business semantics, technical implementations (structure, naming, etc.) may still differ. For communications between two systems, there must be a common format despite the differing technical implementations. Furthermore, the scope of data to be transferred (i.e., which parts/segments of a business object type, etc.) varies greatly from business process to business process.
Currently, views on business object types can be defined statically, and have to be implemented individually. Alternatively, one can build views on the level of the database; thereby losing the business context (table lines instead of business objects, all business validations of data lost, etc.). These approaches are limited by the business needs (no mere access on data base level) and the effort to realize a static view on a business object type.